package vip.xiaonuo.invoice.modular.param;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Getter;
import lombok.Setter;

/**
 * 冲红发票请求参数
 *
 * @author AI Assistant
 */
@Getter
@Setter
public class RedInvoiceRequestParam {

    /**
     * 原发票号码
     */
    @Schema(description = "发票跟踪Id")
    @NotBlank(message = "发票跟踪Id不能为空")
    private String invoiceTraceId;


    /**
     * 冲红原因代码
     */
    @Schema(description = "冲红原因代码")
    private String redReasonCode;

    /**
     * 冲红金额(不含税)
     */
    @Schema(description = "冲红金额(不含税)")
    private String redAmount;

    /**
     * 冲红税额
     */
    @Schema(description = "冲红税额")
    private String redTaxAmount;

    /**
     * 冲红税率
     */
    @Schema(description = "冲红税率")
    private String redTaxRate;


    /**
     * 回调地址
     */
    @Schema(description = "回调地址")
    private String callbackUrl;

}
